calendarswikiaorg-20200214-history
International Calendar
The International Standard Calendar is based upon the rules laid out in the international standard ISO 8601. It consists of a primary calendar, which defines a year based on months and a leap day rule (Gregorian calendar), and a secondary calendar, which uses the same year count but subdivides a year into weeks (ISO calendar). The International Calendar is a superset thereof that contains more notation variants and auxiliary calendars. Basics A modest way to propose calendar reforms are incremental, backwards-compatible additions and clarifications to this standard. Several such enhancements are possible, some of which are furthermore compatible with alternate calendar proposals, i.e. the International Calendar is a superset thereof. It is a best practice accepted in standardization to collect existing use deviating from the current standard, analyze it and, finally, form rules based upon the findings, which are compatible as much as possible with both the existing standards and popular habits. There is, for instance, much precedent in labeling quarters of a year “Q1” through “Q4”, although the exact definition of a quarter varies. It is also common to speak of the n''th week of a month, but the standard currently only implicitly defines a rule for that by prescribing which year a week belongs to. It is also common to speak of the ''n''th (instance of a) weekday in a month. Especially for some religious and esoteric purposes, the solstices and equinoxes (including visibility of constellations) or the phases of the moon are more relevant than months and weeks. It may make sense to define notation for auxiliary years based on that, aligned with the common year count. The seven-day week cycle is important to several religious groups and therefore is hard to break apart from, as has been seen by the failed attempt to introduce the World Calendar by the United Nations in the 1950s. In financial contexts, the month and year are often simplified to 30 and 360 days, respectively. Elsewhere, a month is often thought of as consisting of 4 full weeks only, which would require slightly more than 13 months per year. The International Calendar is not related to the International Fixed Calendar. Guidelines Types of formats * There must not be ambiguous formats. If two schemes would result in two or more confusable formats, all of them or all but one must be declared invalid. * Only add a redundant format if there are good reasons for it. * Extend existing schemes and conventions. ** Apply week of year determination rule to months, quarters etc. ** Reuse the ‘W’ convention for other entities if necessary. * Single alphabetic letters in a format are called “markers”. * Every date format must be able to resolve any day. The day must be the smallest possible unit in a date. Standard vs. basic * The ''extended format becomes the standard format, the'' basic format'' is a condensed or collapsed or compact version thereof. * Collapse everything or nothing. * Support condensed format where possible. ** Do not condense formats with a one-digt part, except when it is the last one and follows an alphabetic marker. (This is a suggestion that this page does not yet adhere to.) ** Do not condense formats with plus or minus sign before the year number. * Do not support two-digit years without century and era (YY) in new formats, but consider their existence. * Do not support years with more than ten digits which is already more than than the age of the universe. Implied formats * Partial values on the right may be left out. This specifies less specific dates. * Partial values on the left may be left out without dropping separators and markers. Missing parts are implied (usually using the live value). ** Separators may be dropped if markers alone make the format unambiguous. ** In durations sepcified dby start and end date, omitted fields in the end date take the value from the start date. Both should use the same format, unless agreed on otherwise. Other rules, requirements, constrictions * Do not break the week cycle. * Use 97/400 leap year cycle with 4–100–400 rule by default. * Dates are ordinal, except for the year, but times are rational, i.e. the former start at “first” (1), the latter begin with “none” (0). Agenda * Support more obscure units of time keeping, such as school lessons (often 45min), or other parts of timetables and regular schedules. ** Templates: T<#/6> (watch = 4h), T'''HH:<#/2>''' or T'''HH:<#/4> (bell = 30min or 15min), 'T'HH:<##/40>''' (moment = 90s) ** The fortnight of two weeks is probably not worth supporting. * Find and correct mistakes. * Expand sections marked “'under construction'”. ** Consider better support of popular lunar calendars such as the Arabic one, but probably only algorithmic ones. ** Support other astrological calendars and zodiac signs. Existing formats The identifier ±CCYY (±4), on this page, refers to any of the three 4-digit formats for small years above and to any large year as specified in the next section. General clarifications, additions or enhancements Large years ±CCYYMM (with leading plus or minus sign) could be confused with six-digit years ±EECCYY, seven-digit and eight-digit years would be ambiguous with the condensed ±CCYYDDD ordinal dates and ±CCYYMMDD full dates, respectively. Therefore compact formats are only valid without a leading plus or minus sign unless they contain a marker as first character after the year. Note, that the deprecated YYDDD is already compatible with five-digit years ±ECCYY (i.e. almost all of human history). Four-digit years should not have a preceding plus sign to avoid ambiguity. Two digits designate a century, but it is not possible to pad it on the left with zeros, although ISO 8601:2004 allowed this expanded format for prior mutual agreement. The characters minus sign U+2212 ‘−’ and en dash U+2012 ‘–’ are also valid instead of hyphen-minus U+002D ‘-’ before years. They are invalid as a separator. Truncation Implied century was possible in ISO 8601:2000, but all truncated formats'''were removed in the third edition, ISO 8601:2004. For backwards compatibility, however, CCYYMM instead of YYMMDD is invalid. The current edition only accepts formats with reduced accuracy that truncate from the right. Also, the left-hand truncation used to work slightly different than the first table shows. Epoch ISO 8601 uses the date the Metre Convention was signed as its reference date, assigning to it the date 1875-05-20 (1875-W21-2) and it also equates 2001-01-01 with 2001-W01-1. Although honorable, an event that can be reconstructed more exactly and independently, e.g. an astronomic one, might be more appropriate, but must result in an equivalent year count and week cycle. Leap rule The Gregorian leap rule does not spread leap years evenly across the cycle, but this is not a defect of the cycle length itself. Its 400-year cycle results in terminating fractions and it has the benefit, though, that its rule can easily be memorized and calculated, but only for leap days, not for leap weeks. Gregorian leap day rule: Add a day to the second month when the year number is divisible by 4, but when it is divisible by 100 it must also be divisible by 400. The placement of leap weeks follows from that, although it could be defined independently as in Rick McCarty’s Weekdate. The default leap rule cannot be changed, because the International Standard Calendar is proleptic and formats are backwards-compatible! Therefore, alternate leap rules must be indicated explicitly. * The '''leap cycle is also called an era. * A leap cycle absolutely must contain an even number of weeks, i.e. the number of days must be divisible by 7. * Both leap rules should be easy to cite and one should be able to determine whether a given year has a leap day or leap week with mental arithmetic. * Leap years should be spread as evenly as possible across the leap cycle. * The leap cycle should not be too long, say a millennium at worst. * A larger leap cycle should approximate the solar year (about 365 days, 5 hours and 49 minutes) better than any shorter cycle. The approximation should be smaller. ** Otherwise it must have another positive feature to be considered. * The leap cycle (or a small integer multiple thereof) should contain an even number of lunations. There are very few leap ratios that fulfill the basic requirements, the shortest one has 71 leap days and 52 leap weeks in 293 years. 293 and 817-year cycles both provide better approximations than the Gregorian one. The 293-year cycle curiously has as many leap weeks in a cycle as weeks in a normal year. 31 cycles of 293 years each, i.e. 9083 years, are close enough to 112 341 lunations. A lunation could therefore be defined as 107016 days/cycle * 31 cycles / 112341 months = ca. 29.5305899 days/month. 11 cycles work slightly worse. Intercalary days * D = 0 is not the Sunday (7) of the preceding week, but is reserved for use for days outside the week cycle, e.g. in the Fixed Festivity Calendar. * DDD = 000 and DD = 00 are likewise intended for a day outside the month, quarter or year cycle. * W'W = W0 and '''W'WW = W00 are likewise intended for a week outside the month, quarter or year cycle. * MM = 00, M = 0, 'M'MM = M00 and 'M'M = M0 are likewise intended for a month outside the quarter or year cycle. No intercalary item is specified for the standard calendars, though. The Aristean calendar proposes to use D = 8 for the leap day (-06-31) and the intercalary day (-12-31), but DDD ordinal day of the year would differ by one from normal years for the second half of leap years. This proprietary solution is not (yet) supported. Date marker The new marker ‘D’ may be used in front of any date, like ‘T’ is used before times. It does not carry a meaning of day, but it may be used before dates with implied fields, too, so 'D'D and 'D'DDD are valid and unambiguous, but 'D'DD is neither. This date marker may be substituted by one of several others that specify a certain leap rule and epoch, hence era. Of subdivisions, only fields containing the leap item, the leap item itself and null items are affected by the date marker. Support for date markers other than ‘D’ and the empty one is '''optional! Values using unsupported date markers must be rejected entirely. The following table lists all date markers that have been registered so far. It is currently biased towards European tradition and solar calendars. Month-based additions and clarifications The month year has 365 days in a common year or 366 days in a leap year. Triad: 3-month quarters Three consecutive months make one of four triads. They are 90 (or 91 with leap day), 91, 92 and 92 days long, respectively, and align with the month year of course. These should not be subdivided into weeks, although that is supported. The condensed format without hyphens is not supported with these dates, because they would collide with existing ones. Weekday of month or of triad The n''th weekday of a triad or month may be specified by providing the 2-digit or 1-digit ''pseudo-week number, respectively. Note that, for instance, -1-01-1 through -1-01-7 and -01-1-1 through -01-1-7 do not denote partial weeks but the first seven days of the first triad or month, respectively, which often belong to two different weeks, therefore the day of the week part D is never optional, i.e. -Q-WW (which would be ambiguous with -Q-DD) and -MM-W are invalid, and, like their bases, the formats cannot be condensed. There is no provision to select the n''th weekday of the year. Week-based additions The '''week year' used herein has exactly 52 weeks (364 days) in a short year or 53 weeks (371 days) in a long year. The term normal year is ambiguous, as it means a short year in the context of week years and a common year in the context of month years. There is no format which allows to specify the ordinal day of a week year (001 through 364 or 371), although that was possible, e.g. as ±CCYY'''-D'DDD. Three consecutive digits after the marker ‘W’ are already used by the condensed format '''W'WWD. Quart: 13-week quarters Each of the 4 quarters, called quarts, has 13 weeks excatly, except for the final one in long years. This long quart has 14 weeks then. Although there is no consensus on how quarts of 91 days or 13 weeks should be separated into 3 months of almost equal length, there are just two basic approaches: one divides each quarter into portions of 30 days twice and 31 days once, the other uses 4 weeks twice and 5 weeks once. Choosing the former, the Common-Civil-Calendar-and-Time calendar, the ISO-Uncia Leap Week Calendar and the Edwards perpetual calendar all use 30:30:31 days, the Symmetry010 Calendar uses 30:31:30 days and the Aristean Calendar uses 31:30:30 days. When the “Thursday rule” is applied to any of these patterns it always results in a week layout of 4:5:4 as in the Symmetry454 Calendar, i.e. neither 5:4:4 as in the Bonavian Civil Calendar nor 4:4:5. Months of quarts, furthermore, cannot match exactly the full-week months determined by the week date ('-'''MM'-W'W or '-'Q'-'M'-W'W), because the first triad may have just 12 weeks and the third triad may also have 14 weeks (like the fourth). Quarts are therefore divided into three months that primarily consists of 4, 5 and 4 weeks ('-Q'Q'-'M'-W'W'-'D) and, matching that middle-high scheme, alternatively they consist of 30, 31 and 30 days ('-Q'Q'-'M'-'DD). Without weeks or days provided, i.e. in the form '-Q'Q'-'M, there is no distinction between these – the ''month duality. There is no way to reference a day in 28|35-day months without its week. ‘W’ instead of ‘Q’ as a marker for quarts would work, too, but not as well for some (condensed) formats. Also, it may be counter-intuitive to have “W1” not mean the first week of a month. Moon: 13 months The week year is divided into 13 months, called moons. A normal moon has 4 complete weeks (28 days). The last moon in long years is a long moon '''and has 5 weeks (35 days). Since there is a leap week instead of intercalary days, these moons align with the week year, not the month year. This format is compatible with the New Earth Calendar, which uses a custom leap rule though, and differs from the International Fixed Calendar (Cotsworth–Eastman plan), which uses intercalary days and starts weeks on Sunday. With alternative leap rules, there can be a 13-moon year with an additional '''leap moon every 22 or 23 years, but this does not work with a 400-year leap cycle, because it does not contain an integer multiple of 28 days. The 293-year cycle, however, would contain exactly 13 leap moons. Another leap rule may use an independent year count for moon years, of which there are 294 in a cycle of 293 week or month years. There would be no long moons in either case. Mixed additions and clarifications Week of month or of triad The number of weeks per month, hence triads, is determined by the usual Thursday rule, that means a week belongs to the month (or triad) the majority of its days (4 to 7) fall into, this always includes its Thursday. A short month has 4 weeks, a long month has 5 weeks. There are 4 long months in normal years and 5 ones in 53-week long years. The term normal month'is only used for Gregorian months of 28 to 31 days. A month has 5 weeks if it has at least 29 days and starts on Thursday, has at least 30 days and starts on Wednesday, or has 31 days and starts on Tuesday. The resulting pattern is irregular. The first triad may have just 12 weeks ('short triad), the second always has 13 weeks (normal triad) and either the third or the fourth may, instead of 13, have 14 weeks (long triad). Note that triads and normal months divided into full weeks together effectively constitute the week year and not the month year. To put it differently: every date with a ‘W’ marker in it uses the week year. Financial and administrative additions Fiscal quarters, months and year Each of the 12 fiscal months has exactly 30 days, hence the fiscal year '360 days. Each of the four '''fiscal quarters '''in a year by default has 90 days in it. All start and end dates, hence exact lengths, may be user-defined. The week is not used with this format! Month F00 and quarter F0 contain 5 days in common years and 6 days in leap years. When mapping to the Gregorian calendar, they represent the 31st days of May, July, August, October and December as well as the 29th day of February. The last two days of the fiscal month closest matching February map to the 31st days of January and March. Academic year and terms Half-year ''semesters and third-year trimesters are only really useful with an academic year signifier, e.g. ‘A’, that changes the start of the year to 1 September, for instance, because when the academic year starts in fall as is common on the Northern hemisphere, semesters do not work well with the standard Gregorian calendar, since most days of the first (winter) semester would lie in the preceding year, but should belong to the succeeding one. Semesters ; half of a year : 6 months (181*:184 days) : 26:26* weeks (182:182|189 days) : 2 quarts (26:26* weeks) : 182*:183 days The division of semesters into two quarts each, 'H'H-'Q'''Q, is supported, although “quarters of halves” might seem strange at first since quarters are usually halves of halves. Triads, '''H'H-Q , would conflict with months, 'H'H-M, nevertheless and are not supported. Moons of semesters, 'H'H-'M'M, are not supported, because 13 moons do not fit well in 2 halves. Months of any kind are also mostly meaningless for academic applications, weeks are far more important. Trimesters ; third of a year (i.e. not three months) : 4 months (120*:123:122 days) or : 4:5:4* moons (16:20:16|20 weeks = 112:140:112|140 days) : 17:18:17* weeks (119:126:119|126 days) or : 121:122:121* days There is no good marker available for trimesters or terms: ‘T’ is taken by times. Possible fallback solutions are “Year” '''Y ⇒ “A2012Y”, “Education” E''' or “Academic” '''A – ‘A’ is used for now as marker, but ‘T’ is used as a variable. Quarters of trimesters are not supported, because they are of similar length. Astronomic and astrologic additions Lunar year and months A lunar month or lunation has 29 or 30 days and is astronomically defined from new moon to new moon at 0° 0°. A day belongs to the lunation the majority of its hours belong to. Likewise, a lunar month belongs to the month year the majority of its days (15 to 30) fall into; in the unlikely case of a 30-day month with 15 days in both years it belongs to the year most of its weeks belong to. The lunar year therefore contains either 12 or 13 complete lunar months. The week is not used with this format, but the ordinal days of the lunar month may be alternatively identified by being the n''th weekday of a kind in that month. Astronomic year and seasons, astrologic signs Northern winter and Southern summer belongs to the Gregorian year most of its days fall into, therefore it is the first season of the year. This is the week of the year rule applied to seasons. The fours seasons begin on the days of solstices and equinoxes. It is not (yet) decided whether the seasons (and zodiacs) start at fixed dates relative to the Gregorian calendar or are based upon some accurate astronomic measurement or calculation. They always belong, however, to the season most of their days fall into. Shifts ' ' or '''tours'(T) are an economic measure ranging from few hours to almost a day. There are usually less than ten shifts in a day, i.e. one digit T suffices, but the actual length varies. Often, but not always, there is an integer number of shifts per day, e.g. 2 × 12h, 3 × 8h or 4 × 6h. There are often an integer number (usually larger than ten) of shifts in a (work) week, e.g. 24 × 7h, i.e., unlike for weekdays, two digits TT are necessary. Thus it is not obvious whether tours should be part of dates (…D'''-'T, …'W'WW'-'TT) or times (…'T'TT). Only 24/7 shifts are supported explicitly. If there is an integer number of shifts in 24 hours, their ordinal numbers (i.e. starting at 1!) follow the time marker in a single-digit field T'T. The exact number of shifts per day is only determined when more time fields are provided: * A single-digit field '''T'T:h is used for hour 0 through 7 for a three-shift pattern; minutes and seconds may follow as usual. * A double-digit field 'T'T:hh is used for hour 00 through 11 for a two-shift pattern; minutes and seconds may follow as usual. * A triple-digit field 'T'T:mmm is used for minute 000 through 359 for a four-shift pattern; seconds may follow as usual. A shift starting one day and ending the next belongs to the day most of its hours belong to; if it is distributed equally, it belongs to the first day. If there is an integer number of shifts in 7 days, their ordinal numbers follow the mandatory separator after a week number in a double-digit field 'W'WW-'TT or '''W'W'''-'TT. This is only a date format, not a date time format, i.e. the time marker and anything following it must not be used in this case! Implementations should assume 24 seven-hour shifts by default. Templates work for individual needs. Users can define the ordinal and the total number of shifts: * '''T<#/#>' * …D'''-<#/#>''' * …'W'''WW'-<##/##>''' Time Existing formats Decimal time Decimal time of day is valid without ‘T’ prefix: “.5” and “,5” mean 12:00:00. The decimal part (with comma) may also start after year, quarter (i.e. quart or triad), month (incl. moon), week and, of course, day. No further subdivisions are possible then. Date-times compatible with most spreadsheet applications are not strings, but signed floating point numbers. The date is specified by a day-count from (when positive) or to (when negative) an 1900-01-01 epoch. The time is calculated as fractional part of the day and follows after the decimal marker (usually a dot, sometimes a comma) – it is therefore compatible with decimal time as specified above. Conforming implementations must consider variable types when available: * Number types must never be considered to be in any International Calendar date-time format. * Strings must not be automatically converted to integers or floats to be treated as (fractional) days, but should be considered to be in an International Calendar date-time format. * Untyped or mutable date-time variables should first be tried to match an International Calendar format and if that fails they may be reconsidered in the spreadsheet compatible format. Partial hours In a normal day, there are 32 intervals three quarters of an hour (i.e. 45min) long. Since the hour itself does not need a marker, H''' is used for these. They are used in education of many countries, but do not need to be subdivided. With daylight savings time considered, there are up to one hundred quarter-hours of 900s (15min) per day 'C'qq:sss, but usually 96, counted from 00. Their marker is '''C, because Q''' is taken by quarters of years and it is mnemonic of centum, which is Latin for “hundred”. There are 4 quarter-hours of 15min per hour hh:q':'''mm, counted from 0 through 3. They are used without a marker. It is deliberately not possible to address anything in three-quarter hours, minutes in quarter-hours of the day and seconds (directly) in quarters of hours. All condensed formats without an explicit hour are invalid, even though some could be parsed unambiguously. There are usually 288 intervals of 5 minutes in a day (''twelfth-hours), numbered from 000 through 287 and subdivided into 300 seconds fff:sss. Time zone The negative zero time zone offset '''-00:00 or '-00' is valid and, as in , it explicitly specifies that there is no preferred timezone. Times without explicit offset are in a user-defined time zone. The marker U''', in place of '''Z, automatically selects the time zone the emitter (server) is currently in, whereas the marker Y''' selects the offset applicable for the recipient (client). Instead of a single-letter or numeric offset, all alphabetic geographical codes from , which are at least two characters long, may be used as '''time zone markers. They should respect the date to automatically consider historic time zones and (DST). Note that time zones are not available before the late 19th century. Intervals, spans, periods, repetitions * ‘Q’ is added for the 13|14-week quart, 3-month triads remain “3M” * A duration may now combine weeks with years and days, but not with months. ISO 8601:2004 only allowed P''n''W, but not P''m''Yn'W'o'D'. A year, in this case, consist of either 52 or 53 complete weeks. * ‘F’ is added for the 30-day month (“30D”). * ‘L’ is added for the lunar month (ca. 29.5 days). It should only be used with absolute start or end date. * When a time interval is specified by start and end date, both should be provided in the same format. Alternate syntax * Complete dates, times and datetimes may be surrounded by paired parentheses ‘(’ and ‘)’. ** When start and end datetime in intervals are enclosed thusly the separating slash may be replaced by a double hyphen ‘--’ or en dash ‘–’. * Instead of the prefix marker ‘P’ or in addition to it, durations may be enclosed in paired square brackets ‘and ‘’. The opening bracket is placed before the marker if both are used. ** When the bracket notation is used, alternate symbols may be used for the year ‘a’, the month ‘mon’ and the minute ‘min’ and whitespace is permissable after symbols. * Instead of the prefix marker ‘R’ or in addition to it, repeated intervals may be enclosed in paired braces ‘{’ and ‘}’. The opening brace is placed after the marker, the optional number of repetitions and the slash, which also becomes optional then. Wildcards, partial duration, uncertainty When intervals are specified with start and end date and no duration, fields may be left out from the end date and are assumed to be the same as for the start date, e.g. 2012-09-10/11 is a two-day span. Alternatively, square brackets may be used around field values, which then can use a richer format: it contains a semicolon-separated list of spans where the end value and the slash are optional, e.g. 2012-09-10;12/14. The alternate double hyphen is also valid then, e.g. 2012-09-10--12. Brackets may be used with any field, e.g. 2012/2015-09-10. Uncertain dates, e.g. in genealogy, may be specified with a tilde followed by the amount of uncertainty, e.g. 2012-09-11~1 is the same as 2012-09-10--12. Another option to specify multiple or uncertain dates are wildcards. To mark a single digit as arbitrariy it is replaced by the marker ‘X’, to mark a complete field – no matter its length – as arbitrary it is replaced by the marker asterisk ‘*’, but markers such as ‘W’ remain. In data interchange, digits to be filled in by the partner may be replaced by the underscore ‘_’ instead of ‘X’. Templates and comments Comments Comments are placed between an opening angular bracket ‘<’ and a closing one ‘>’. A conforming software implementation may ignore anything after the comment start character and the matching comment end character or the end of the date string. This may be used, among other things, to tag a month-day date with its weekday, e.g. 2012-09-10. Templates Users may declare subdivisions of their own for the years defined above and they may specify dates in that custom calendar. *CCYY – 365|366 days, leap day, default *CCYY'W' = CCYY'M' = CCYY'Q' – 364|371 days, 52|53 weeks, leap week *CCYY'F' – 360 days, 12 months, 30 days each *CCYY'L' – 12 or 13 months, 29 or 30 days each *CCYY'S' – 4 seasons, 12 signs This is done by providing the length of the subdivision in angular brackets ‘<’ length ‘>’ after a slash ‘/’ and possibly the ordinal value before the slash. The smallest (and default) subdivision length before a ‘T’ marker is one day. If the subdivision length is the same for all items it is automatically repeated, otherwise alternating lengths can be separated by a colon to form a pattern, in the worst case a non-repeating pattern has to be used which lists all subdivision lengths. Separators, i.e. dashes, are not optional between closing and opening angular bracket. The leap item is indicated by an asterisk character ‘*’ followed by the number of items, which can be left out if equal to one ‘*1’. If there is an intercalary subdivision it is denoted by a plus sign ‘+’ and is either placed directly after the item it belongs to or after another slash. The hash character ‘#’ may be used in place of ordinal numbers when defining the calendar. In date designations, the ordinal number and the length must both be left-padded with zeros to the same length which must be the smallest number of decimal digits capable of representing the largest subdivision. Holidays With a calendar reform there are always several ways to determine the date of annual holidays and birthdays. * Convert from the classic calendar each year, e.g. Christmas, December 25, stays at -12-25 and can fall on any day of the week. ** A special case are astronomically defined holidays which use features that are not accurately represented in the calendar, e.g. four days after the winter solstice (could be written -S0-1-04 or -S4-04 etc.). They have to be determined by observation or, rather, by independent calculation. * Convert the original date to the new calendar, e.g. 0000-12-25 was a Monday, hence -W52-1. * Use a similar looking date in the new calendar, e.g. -M12-25 which is a Thursday and equals -M12-W4-4. * Reinterpret the date in the new calendar, e.g. three weeks and four days into the last month of the year, -12-W3-4 (Thursday), or one week before the last day of the year, -W51-7 (Sunday). Depending on the reason for a holiday one or several of these methods may make sense to use. Note that stakeholders may prefer different approaches for external reasons, workers may prefer to have holidays not fall on weekends, for example. Astronomically defined holidays can of course be fixed arbitrarily in any calendar. The date of Easter in non-orthodox churches, for instance, is currently specified as the first Sunday after the first full moon after the begin of spring in the Gregorian calendar (-03-21). One could instead use the corresponding week from the year Jesus of Nazareth supposedly died on the cross, or one selects the day that is most frequently selected by the current rule or is closest to the median, -W14-7. Implementation A fully compliant software implementation of this specification must be able to accept any of the formats described and convert it into every other representation. A partially compliant implementation must accept at least one of the formats and must not successfully parse any otherwise valid format into something else. Path syntax In file systems and web addresses (URL, URI, IRI), the fields in hierarchical data are often separated by the forward slash or solidus ‘/’. In ISO 8601:2004, this character is normally used to separate the parts of time intervals instead. Paths in such addresses may use the slash as a separator instead of dash ‘-’ and colon ‘:’, if and only if compact forms and durations and time zones are not used. It may also replace the ‘T’ marker in datetimes. Implied fields and reduced precision are valid. In the query part of web addresses, i.e. after a question mark ‘?’, the normal forms should be used as values, i.e. right of an equals sign ‘=’. The uppercase markers ‘P’, ‘R’, ‘T’ and new ‘D’ for dates or combined datetimes are registered as universal keys, i.e. left of the equals sign ‘=’. They must not be repeated afterwards. All forms defined herein are valid, but may not be supported by legacy applications, e.g. /foo?D=2012-09-12. In the local part of web addresses, i.e. after a hash sign ‘#’, the same key-value syntax is supported. Please note the existence of Media Fragments, though, especially the t=clock:, format, which only supports the RFC 3339 profile of ISO 8601, i.e. hardly more than CCYY'''-'MM'-'DD'T'hh':mm:ss±'hh':'''mm. Applications may support all forms without key and equals sign as the single value, e.g. /foo?2012-W30 or /foo#2012-09, but the markers, except for ‘D’ then become mandatory again. An exception to the ruleset above are time intervals that are specified by slash-separated start date as the path part before the question mark ‘?’ and the end date or duration, also with slashes, as query without name value distinction, e.g. /2012/09/01?/10/08 is the address notation for standard 2012-09-01/10-08. Formal grammar Category:Proposed calendars Category:Perpetual calendars Category:Equal-quarter calendars Category:Leap Week Calendars Category:Leap day calendars Category:Week starts Monday Category:12-month calendars Category:13-month calendars Category:28-day month calendars Category:28-35-day month calendars Category:30-31-day month calendars Category:Date notations Category:ISO standards Category:Reformed Gregorian calendars